package com.yckj.activechicken.business.common.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yckj.activechicken.framework.aspectj.lang.annotation.Excel;

import java.io.Serializable;
import java.util.Date;

public class CustomSequence implements Serializable {
    private Integer sequenceId;

    @Excel(name = "序列名称")
    private String name;

    @Excel(name = "使用表")
    private String userTable;

    @Excel(name = "序列前缀")
    private String prefixString;

    private Integer currentValue;

    @Excel(name = "当前值")
    private String currentValueStr;

    @Excel(name = "序列字符长度")
    private Integer strLength;

    @Excel(name = "自增步长")
    private Integer increment;

    @Excel(name = "使用说明")
    private String remark;

    private String createBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    private String updateBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    private static final long serialVersionUID = 1L;

    public Integer getSequenceId() {
        return sequenceId;
    }

    public void setSequenceId(Integer sequenceId) {
        this.sequenceId = sequenceId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name == null ? null : name.trim();
    }

    public String getUserTable() {
        return userTable;
    }

    public void setUserTable(String userTable) {
        this.userTable = userTable == null ? null : userTable.trim();
    }

    public String getPrefixString() {
        return prefixString;
    }

    public void setPrefixString(String prefixString) {
        this.prefixString = prefixString == null ? null : prefixString.trim();
    }

    public Integer getCurrentValue() {
        return currentValue;
    }

    public void setCurrentValue(Integer currentValue) {
        this.currentValue = currentValue;
    }

    public String getCurrentValueStr() {
        return currentValueStr;
    }

    public void setCurrentValueStr(String currentValueStr) {
        this.currentValueStr = currentValueStr == null ? null : currentValueStr.trim();
    }

    public Integer getStrLength() {
        return strLength;
    }

    public void setStrLength(Integer strLength) {
        this.strLength = strLength;
    }

    public Integer getIncrement() {
        return increment;
    }

    public void setIncrement(Integer increment) {
        this.increment = increment;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark == null ? null : remark.trim();
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy == null ? null : createBy.trim();
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy == null ? null : updateBy.trim();
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", sequenceId=").append(sequenceId);
        sb.append(", name=").append(name);
        sb.append(", userTable=").append(userTable);
        sb.append(", prefixString=").append(prefixString);
        sb.append(", currentValue=").append(currentValue);
        sb.append(", currentValueStr=").append(currentValueStr);
        sb.append(", strLength=").append(strLength);
        sb.append(", increment=").append(increment);
        sb.append(", remark=").append(remark);
        sb.append(", createBy=").append(createBy);
        sb.append(", createTime=").append(createTime);
        sb.append(", updateBy=").append(updateBy);
        sb.append(", updateTime=").append(updateTime);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}